diff options
author | Kent Hansen <khansen@trolltech.com> | 2009-06-12 20:30:38 +0200 |
---|---|---|
committer | Kent Hansen <khansen@trolltech.com> | 2009-06-12 20:30:38 +0200 |
commit | 45a72e2dfeffb582da7f8b4ffd92924bcd6a9166 (patch) | |
tree | 75cd24e5455dea0f4a9fd45e01c380993b9afa8c | |
parent | 9a041e28ec478791240f2cbe8c19a9f3f8bc7a1a (diff) |
reap benefits of scriptdebugger core refactorings
-rw-r--r-- | src/qscriptremotetargetdebugger.cpp | 143 | ||||
-rw-r--r-- | src/qscriptremotetargetdebugger.h | 8 |
2 files changed, 5 insertions, 146 deletions
diff --git a/src/qscriptremotetargetdebugger.cpp b/src/qscriptremotetargetdebugger.cpp index 9e5152e..1f3980f 100644 --- a/src/qscriptremotetargetdebugger.cpp +++ b/src/qscriptremotetargetdebugger.cpp @@ -28,16 +28,7 @@ #include <private/qscriptdebuggercommand_p.h> #include <private/qscriptdebuggerevent_p.h> #include <private/qscriptdebuggerresponse_p.h> -#include <private/qscriptdebuggerwidgetfactoryinterface_p.h> -#include <private/qscriptdebugoutputwidget_p.h> -#include <private/qscriptdebuggerconsolewidget_p.h> -#include <private/qscripterrorlogwidget_p.h> -#include <private/qscriptbreakpointswidget_p.h> -#include <private/qscriptdebuggercodewidget_p.h> -#include <private/qscriptdebuggercodefinderwidget_p.h> -#include <private/qscriptdebuggerstackwidget_p.h> -#include <private/qscriptdebuggerscriptswidget_p.h> -#include <private/qscriptdebuggerlocalswidget_p.h> +#include <private/qscriptdebuggerstandardwidgetfactory_p.h> // #define DEBUG_DEBUGGER @@ -302,7 +293,7 @@ void QScriptRemoteTargetDebugger::createDebugger() { if (!m_debugger) { m_debugger = new QScriptDebugger(); - m_debugger->setWidgetFactory(this); + m_debugger->setWidgetFactory(new QScriptDebuggerStandardWidgetFactory(this)); QObject::connect(m_debugger, SIGNAL(started()), this, SIGNAL(evaluationResumed())); QObject::connect(m_debugger, SIGNAL(stopped()), @@ -420,120 +411,14 @@ void QScriptRemoteTargetDebugger::showStandardWindow() QWidget *QScriptRemoteTargetDebugger::widget(DebuggerWidget widget) const { const_cast<QScriptRemoteTargetDebugger*>(this)->createDebugger(); - switch (widget) { - case ConsoleWidget: { - QScriptDebuggerConsoleWidgetInterface *w = m_debugger->consoleWidget(); - if (!w) { - w = new QScriptDebuggerConsoleWidget(); - m_debugger->setConsoleWidget(w); - } - return w; - } - case StackWidget: { - QScriptDebuggerStackWidgetInterface *w = m_debugger->stackWidget(); - if (!w) { - w = new QScriptDebuggerStackWidget(); - m_debugger->setStackWidget(w); - } - return w; - } - case ScriptsWidget: { - QScriptDebuggerScriptsWidgetInterface *w = m_debugger->scriptsWidget(); - if (!w) { - w = new QScriptDebuggerScriptsWidget(); - m_debugger->setScriptsWidget(w); - } - return w; - } - case LocalsWidget: { - QScriptDebuggerLocalsWidgetInterface *w = m_debugger->localsWidget(); - if (!w) { - w = new QScriptDebuggerLocalsWidget(); - m_debugger->setLocalsWidget(w); - } - return w; - } - case CodeWidget: { - QScriptDebuggerCodeWidgetInterface *w = m_debugger->codeWidget(); - if (!w) { - w = new QScriptDebuggerCodeWidget(); - m_debugger->setCodeWidget(w); - } - return w; - } - case CodeFinderWidget: { - QScriptDebuggerCodeFinderWidgetInterface *w = m_debugger->codeFinderWidget(); - if (!w) { - w = new QScriptDebuggerCodeFinderWidget(); - m_debugger->setCodeFinderWidget(w); - } - return w; - } - case BreakpointsWidget: { - QScriptBreakpointsWidgetInterface *w = m_debugger->breakpointsWidget(); - if (!w) { - w = new QScriptBreakpointsWidget(); - m_debugger->setBreakpointsWidget(w); - } - return w; - } - case DebugOutputWidget: { - QScriptDebugOutputWidgetInterface *w = m_debugger->debugOutputWidget(); - if (!w) { - w = new QScriptDebugOutputWidget(); - m_debugger->setDebugOutputWidget(w); - } - return w; - } - case ErrorLogWidget: { - QScriptErrorLogWidgetInterface *w = m_debugger->errorLogWidget(); - if (!w) { - w = new QScriptErrorLogWidget(); - m_debugger->setErrorLogWidget(w); - } - return w; - } - } - return 0; + return m_debugger->widget(static_cast<QScriptDebugger::DebuggerWidget>(widget)); } QAction *QScriptRemoteTargetDebugger::action(DebuggerAction action) const { QScriptRemoteTargetDebugger *that = const_cast<QScriptRemoteTargetDebugger*>(this); that->createDebugger(); - switch (action) { - case InterruptAction: - return m_debugger->interruptAction(that); - case ContinueAction: - return m_debugger->continueAction(that); - case StepIntoAction: - return m_debugger->stepIntoAction(that); - case StepOverAction: - return m_debugger->stepOverAction(that); - case StepOutAction: - return m_debugger->stepOutAction(that); - case RunToCursorAction: - return m_debugger->runToCursorAction(that); - case RunToNewScriptAction: - return m_debugger->runToNewScriptAction(that); - case ToggleBreakpointAction: - return m_debugger->toggleBreakpointAction(that); - case ClearDebugOutputAction: - return m_debugger->clearDebugOutputAction(that); - case ClearErrorLogAction: - return m_debugger->clearErrorLogAction(that); - case ClearConsoleAction: - return m_debugger->clearConsoleAction(that); - case FindInScriptAction: - return m_debugger->findInScriptAction(that); - case FindNextInScriptAction: - return m_debugger->findNextInScriptAction(that); - case FindPreviousInScriptAction: - return m_debugger->findPreviousInScriptAction(that); - case GoToLineAction: - return m_debugger->goToLineAction(that); - } - return 0; + return m_debugger->action(static_cast<QScriptDebugger::DebuggerAction>(action), that); } QToolBar *QScriptRemoteTargetDebugger::createStandardToolBar(QWidget *parent) @@ -575,24 +460,4 @@ QMenu *QScriptRemoteTargetDebugger::createStandardMenu(QWidget *parent) return menu; } -QScriptDebugOutputWidgetInterface *QScriptRemoteTargetDebugger::createDebugOutputWidget() -{ - return new QScriptDebugOutputWidget(); -} - -QScriptDebuggerConsoleWidgetInterface *QScriptRemoteTargetDebugger::createConsoleWidget() -{ - return new QScriptDebuggerConsoleWidget(); -} - -QScriptErrorLogWidgetInterface *QScriptRemoteTargetDebugger::createErrorLogWidget() -{ - return new QScriptErrorLogWidget(); -} - -QScriptDebuggerCodeFinderWidgetInterface *QScriptRemoteTargetDebugger::createCodeFinderWidget() -{ - return new QScriptDebuggerCodeFinderWidget(); -} - #include "qscriptremotetargetdebugger.moc" diff --git a/src/qscriptremotetargetdebugger.h b/src/qscriptremotetargetdebugger.h index 32f430c..458cce9 100644 --- a/src/qscriptremotetargetdebugger.h +++ b/src/qscriptremotetargetdebugger.h @@ -25,7 +25,6 @@ #include <QtCore/qobject.h> #include <QtNetwork/qabstractsocket.h> #include <QtNetwork/qhostaddress.h> -#include <private/qscriptdebuggerwidgetfactoryinterface_p.h> class QScriptDebugger; class QScriptRemoteTargetDebuggerFrontend; @@ -36,7 +35,7 @@ class QMenu; class QToolBar; class QScriptRemoteTargetDebugger - : public QObject, private QScriptDebuggerWidgetFactoryInterface + : public QObject { Q_OBJECT public: @@ -108,11 +107,6 @@ private Q_SLOTS: void showStandardWindow(); private: - QScriptDebugOutputWidgetInterface *createDebugOutputWidget(); - QScriptDebuggerConsoleWidgetInterface *createConsoleWidget(); - QScriptErrorLogWidgetInterface *createErrorLogWidget(); - QScriptDebuggerCodeFinderWidgetInterface *createCodeFinderWidget(); - void createDebugger(); private: |